Apache POI লাইব্রেরি দিয়ে আপনি Microsoft Office ডকুমেন্টগুলির Core Properties এবং Document Summary Properties সহজেই পরিচালনা করতে পারেন। এই তথ্যগুলি ডকুমেন্টের মেটাডেটা হিসেবে কাজ করে এবং ডকুমেন্টের বিস্তারিত তথ্য যেমন লেখক, শিরোনাম, কিওয়ার্ড, সাবজেক্ট ইত্যাদি ধারণ করে।
১. Core Properties (মূল বৈশিষ্ট্য)
Core Properties হল ডকুমেন্টের বেসিক মেটাডেটা, যেমন:
- Title (শিরোনাম)
- Subject (বিষয়)
- Creator (স্রষ্টা বা লেখক)
- Keywords (কিওয়ার্ড)
- Last Modified By (শেষ সংশোধনকারী)
- Created Date (তৈরি হওয়ার তারিখ)
- Modified Date (সংশোধন হওয়া তারিখ)
Apache POI লাইব্রেরি ব্যবহার করে আপনি এই Core Properties সহজেই সেট এবং এক্সট্র্যাক্ট করতে পারবেন।
কোড উদাহরণ: Core Properties এক্সট্র্যাক্ট করা এবং সেট করা
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.ooxml.POIXMLProperties;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class CorePropertiesExample {
public static void main(String[] args) throws IOException, InvalidFormatException {
// Excel ফাইল লোড করা
FileInputStream fis = new FileInputStream(new File("example.xlsx"));
// Workbook তৈরি করা
XSSFWorkbook workbook = new XSSFWorkbook(fis);
// Core Properties এক্সেস করা
POIXMLProperties.CoreProperties coreProperties = workbook.getProperties().getCoreProperties();
// Core Properties পড়া
System.out.println("Title: " + coreProperties.getTitle());
System.out.println("Author: " + coreProperties.getCreator());
System.out.println("Keywords: " + coreProperties.getKeywords());
System.out.println("Subject: " + coreProperties.getSubject());
// Core Properties সেট করা
coreProperties.setTitle("My Excel Document");
coreProperties.setCreator("John Doe");
coreProperties.setKeywords("POI, Excel, Apache");
coreProperties.setSubject("Apache POI Tutorial");
// Excel ফাইল সেভ করা
FileOutputStream fileOut = new FileOutputStream("updatedExample.xlsx");
workbook.write(fileOut);
fileOut.close();
// Workbook বন্ধ করা
workbook.close();
fis.close();
System.out.println("Core Properties সফলভাবে আপডেট করা হয়েছে!");
}
}
কোড ব্যাখ্যা:
- Core Properties:
workbook.getProperties().getCoreProperties()এর মাধ্যমে Excel ফাইলের মূল বৈশিষ্ট্য (Title, Author, Keywords ইত্যাদি) এক্সট্র্যাক্ট করা হয়। - Properties সেট করা: আমরা নতুন মান দিয়ে Title, Creator, Keywords, এবং Subject সেট করেছি।
২. Document Summary Properties
Document Summary Properties হল অতিরিক্ত মেটাডেটা যা ডকুমেন্টের বিষয়ে আরো বিস্তারিত তথ্য ধারণ করে, যেমন:
- Category (শ্রেণী)
- Manager (ম্যানেজার)
- Company (কোম্পানি)
- Content Status (কনটেন্ট স্ট্যাটাস)
- Last Modified By (শেষ সংশোধনকারী)
এই বৈশিষ্ট্যগুলি সাধারণত ডকুমেন্টের ব্যাপারে আরো বিস্তারিত ধারণা প্রদান করে এবং আপনি এগুলিও Apache POI ব্যবহার করে সহজেই এক্সট্র্যাক্ট এবং সেট করতে পারেন।
কোড উদাহরণ: Document Summary Properties এক্সট্র্যাক্ট করা এবং সেট করা
import org.apache.poi.ooxml.POIXMLProperties;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.ss.usermodel.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class DocumentSummaryPropertiesExample {
public static void main(String[] args) throws IOException {
// Excel ফাইল লোড করা
FileInputStream fis = new FileInputStream(new File("example.xlsx"));
// Workbook তৈরি করা
XSSFWorkbook workbook = new XSSFWorkbook(fis);
// Document Summary Properties এক্সেস করা
POIXMLProperties.DocumentProperties documentProperties = workbook.getProperties().getCustomProperties();
// Document Summary Properties পড়া
System.out.println("Category: " + documentProperties.getCategory());
System.out.println("Company: " + documentProperties.getCompany());
System.out.println("Manager: " + documentProperties.getManager());
// Document Summary Properties সেট করা
documentProperties.setCategory("Finance");
documentProperties.setCompany("XYZ Corp");
documentProperties.setManager("Jane Doe");
// Excel ফাইল সেভ করা
FileOutputStream fileOut = new FileOutputStream("updatedDocumentSummary.xlsx");
workbook.write(fileOut);
fileOut.close();
// Workbook বন্ধ করা
workbook.close();
fis.close();
System.out.println("Document Summary Properties সফলভাবে আপডেট করা হয়েছে!");
}
}
কোড ব্যাখ্যা:
- Document Summary Properties:
workbook.getProperties().getCustomProperties()এর মাধ্যমে Document Summary Properties যেমন Category, Company, এবং Manager এক্সট্র্যাক্ট করা হয়। - Properties সেট করা: আমরা নতুন মান দিয়ে Category, Company, এবং Manager সেট করেছি।
৩. Core এবং Document Summary Properties এর মধ্যে পার্থক্য
- Core Properties: এটি ডকুমেন্টের মূল বৈশিষ্ট্য (যেমন লেখক, শিরোনাম, বিষয়, কিওয়ার্ড) সম্পর্কে তথ্য প্রদান করে। এটি সাধারণত ডকুমেন্টের মেটাডেটার ভিত্তি হিসেবে কাজ করে।
- Document Summary Properties: এটি ডকুমেন্টের আরো বিস্তারিত বৈশিষ্ট্য প্রদান করে, যেমন বিভাগ, কোম্পানি, ম্যানেজার এবং কনটেন্ট স্ট্যাটাস। এটি সাধারণত ডকুমেন্টের প্রশাসনিক এবং শ্রেণীভিত্তিক তথ্য ধারণ করে।
Apache POI লাইব্রেরি ব্যবহার করে আপনি Excel (এবং অন্যান্য Office ফাইল) এর Core Properties এবং Document Summary Properties সহজেই পরিচালনা করতে পারেন।
- Core Properties মূলত ডকুমেন্টের সাধারণ বৈশিষ্ট্যসমূহ যেমন শিরোনাম, লেখক, এবং কিওয়ার্ড সম্পর্কিত তথ্য ধারণ করে।
- Document Summary Properties ডকুমেন্টের আরো বিস্তারিত তথ্য যেমন শ্রেণী, কোম্পানি, এবং ম্যানেজার সম্পর্কিত তথ্য ধারণ করে।
এগুলি ব্যবহার করে আপনি ডকুমেন্টের মেটাডেটা আরও ভালোভাবে পরিচালনা এবং কাস্টমাইজ করতে পারেন।